package pong.mathematic;

public abstract class Vector {
	public abstract void normalize();

	public abstract float distance();

	public abstract float distance(Vector vec);

	protected float D(float a, float b) {
		return a * a - 2 * a * b + b * b;
	}

	protected double D(double a, double b) {
		return a * a - 2 * a * b + b * b;
	}

	protected int D(int a, int b) {
		return a * a - 2 * a * b + b * b;
	}

	public abstract void add(Vector vec);

	public abstract void add(float decimal);

	public abstract void minus(Vector vec);

	public abstract void minus(float decimal);

	public abstract void multy(float decimal);

	public abstract void divide(float decimal);

	public abstract double angle();

	public abstract void rotateCoordinates(double tiltAngle);

	public abstract void setVector(Vector vec);
}
